package com.wms.system.domain.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.wms.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

@Data
@ApiModel(value = "DeliveryPo", description = "来料收货表实体")
public class DeliveryPo {

    /** 用户ID */
    @Excel(name = "序号", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.NUMERIC, prompt = "零件id")
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    @Excel(name = "版本号", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.NUMERIC, prompt = "版本号")
    @ApiModelProperty("版本号")
    @TableField("version")
    private Integer version;

    @Excel(name = "是否有效: 0-无效 1-有效", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.NUMERIC, prompt = "是否有效: 0-无效 1-有效")
    @TableField("is_delete")
    private Integer isDelete;

    @TableField("create_by")
    private String createBy;

    @TableField("create_user_name")
    @ApiModelProperty("创建人名称")
    @Excel(name = "创建人名称", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.STRING, prompt = "创建人名称")
    private String createUserName;

    @TableField("create_time")
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "创建时间", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "创建时间")
    private Date createTime;

    @TableField("update_by")
    private String updateBy;

    @ApiModelProperty("修改人名称")
    @TableField("update_user_name")
    @Excel(name = "修改人名称", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "修改人名称")
    private String updateUserName;

    @TableField("update_time")
    @ApiModelProperty("修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "修改时间", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "修改时间")
    private Date updateTime;

    @TableField("remark")
    @ApiModelProperty("备注")
    @Excel(name = "备注", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "备注")
    private String remark;

    @TableField("order_code")
    @ApiModelProperty("订单号")
    @Excel(name = "订单号", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "订单号")
    private String orderCode;

    @TableField("asn_code")
    @ApiModelProperty("ASN")
    @Excel(name = "ASN", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "ASN")
    private String asnCode;

    @TableField("effective_data")
    @ApiModelProperty("有效时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "有效时间", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "有效时间")
    private Date effectiveData;

    @TableField("status")
    @ApiModelProperty("状态")
    @Excel(name = "状态", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "状态")
    private Integer status;

    @TableField("upload_time")
    @ApiModelProperty("上传时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "上传时间", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "上传时间")
    private Date uploadTime;

    @TableField("delivery_id")
    @Excel(name = "主表id", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.NUMERIC, prompt = "主表id")
    @TableId(type = IdType.ASSIGN_ID)
    private String deliveryId;

    @TableField("part_code")
    @ApiModelProperty("零件号")
    @Excel(name = "零件号", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "零件号")
    private String partCode;

    @TableField("number")
    @ApiModelProperty("数量")
    @Excel(name = "数量", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "数量")
    private Float number;

    @TableField("uc_code")
    @ApiModelProperty("UC号")
    @Excel(name = "UC号", type = Excel.Type.EXPORT, cellType = Excel.ColumnType.TEXT, prompt = "UC号")
    private String ucCode;


}
